package com.daxt.mapper.archives;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.daxt.model.service.archives.result.ArchivesCount;
import com.daxt.model.service.archives.vo.ArchivesDoc;
import com.daxt.model.service.archives.vo.ArchivesDocFile;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

@Repository
public interface ArchivesDocMapper  extends BaseMapper<ArchivesDoc>{

	IPage<ArchivesDoc> queryList(Page<ArchivesDoc> page,@Param("param")Map<String, Object> param);

	ArchivesCount countVolumes(@Param("dossierId")long dossierId);

	List<ArchivesDocFile> queryFiles(@Param("param")Map<String, Object> param);

	List<ArchivesDocFile> queryFilesSize(@Param("param")Map<String, Object> param);

	IPage<ArchivesDoc> queryListReceive(Page<ArchivesDoc> page,@Param("param")Map<String, Object> param);


	List<ArchivesDoc> queryListNoPage(@Param("fondsId") String fondsId,
									  @Param("typeId") String typeId,
									  @Param("classId") String classId,
									  @Param("fileType") String fileType,
									  @Param("state") String state);

	ArchivesDoc queryById(@Param("docId") String docId);

	List<ArchivesDoc> queryByDossierId(@Param("dossierId") String dossierId);

}
